interface guests {
	firstName : string,
	lastName : string,
	isPrimary : boolean,
	gender : string,
	fullName : string,
}

interface bookedRooms {
	id : number,
	roomIndex : number,
	orderId : number,
	bedType : string,
	breakfast : true,
	price : number,
	adultGuests : number,
	childrenGuests : number,
	childrenAges : [
		number
	],
	guests : guests[]
}


export type BannerItem = {
	imgUrl : String,
	id : String | number,
	name : String,
	nameEn : String
}

export type UserProfile = {
	id : number,
	loginId : string,
	name : string,
	userType : number,
	avatar : string,
	email : string,
	phone : string,
	companyName : string,
	availableCreditAmount : number,
	availableBalanceAmount : number,
	salesManager : {
		id : number,
		name : string,
		phoneNumber : string,
		email : string
	}
}

export type Hotel = {
	id : number,
	name : string,
	code : string,
	nameEn : string,
	countryId : number,
	areaId : number,
	address : string,
	addressEn : string,
	tel : string,
	star : number,
	website : string,
	gpsType : number,
	lng : string,
	lat : string,
	desc : string,
	selling : string,
	refPrice : number,
	status : number,
	heroImage : string,
	pictures : [
		string
	],
	destinationId : number
}
export type orderDes = {
	statusDesc : string,
	id : number,
	orderNo : string,
	hotelId : number,
	hotelName : string,
	hotelNameEn : string,
	orderTime : string,
	payMethodDesc : string,
	contactEmail : string,
	contactName : string,
	contactPhone : string,
	currency : string,
	breakfast : boolean,
	taxAndServiceFee : string,
	taxFee : string,
	totalAmount : string,
	totalPrice : string,
	hotel : Hotel,
	destinationId : number | string,
	status : number | string,
	checkIn : string,
	checkOut : string,
	nights : number | string,
	autoCancelAt : string,
	bookedRooms : bookedRooms[],
	specialRequest : string,
	cancelPolicies : {
		id : number,
		orderId : number,
		fromTime : string,
		toTime : string,
		penalty : number,
		penaltyType : string,
		penaltyPercent : number,
		penaltyAmountDesc : string,
	}[]
}

export type priceItems = {
	label : string,
	notice : string,
	price : string,
	memberRate : string,
	description : string,
	id : string | number,
	bedTypeId : string | number,
}
export type roomItem = {
	id : string | number,
	name : string,
	desc : string,
	size : string,
	bedType : string,
	price : string,
	tags : string[],
	isExpanded : boolean, // 初始是否展开
	isExpanding : boolean, // 是否正在展开动画中
	expandHeight : number, // 展开高度
	priceItems : priceItems[],
	morePrice : number
}
export type book = {
	id : string,
	userId : number,
	companyId : number,
	hotelId : number,
	roomTypeId : string,
	roomTypeName : string,
	taxServiceFee : string,
	roomType : {
		name : string,
		bedType : string,
		floorRange : string,
		areaRange : string,
		hasWindow : true,
		wifi : string,
		maxGuests : number
	},
	ratePlanId : string,
	bedTypeId : string,
	breakfast : true,
	checkIn : string,
	checkOut : string,
	totalPrice : number,
	taxFee : number,
	serviceFee : number,
	taxAndServiceFee : number,
	totalAmount : number,
	currency : string,
	rooms : number,
	bookedRooms : bookedRooms[],
	nights : number,
	bookedNights : [
		{
			id : number,
			orderId : number,
			date : string,
			price : number,
			totalPrice : number
		}
	],
	cancelPolicies : [
		{
			id : number,
			orderId : number,
			fromTime : string,
			toTime : string,
			penalty : number,
			penaltyType : string,
			penaltyPercent : number,
			penaltyAmountDesc : string,
		}
	],
	notes : [
		{
			id : number,
			orderId : number,
			title : string,
			contents : [
				string
			],
			sortOrder : number
		}
	],
	supHotelCode : string,
	nationalityId : number,
	createdAt : string,
	expireAt : string
}



export type rooms = {
	roomIndex : string,
	adultGuests : string,
	childrenGuests : string,
	childrenAges : any[]
	guests : guests[]
}


export type pay = {
	code : string,
	enableAmount : number,
	iconUrl : string,
	id : number,
	name : string
}